Accurate timing is important to operating systems and hypervisors for workload management, and generally maintaining order of various events throughout a system. Each processor in a symmetric multiprocessor system (SMP) is required to have the same time. TOD (Time of day) is a process of maintaining uniform time value across each processor in a symmetric multiprocessor (SMP) system.
One approach to achieve time uniformity between processors is by implementing a counter on all the processors in an SMP network of inter-connected chips such that all the counters are incremented simultaneously throughout the system. In this approach, each processor maintains its own counter and increments in “steps” based upon a stepping signal received from a master chip. With appropriate configuration of delays at each processor, each processor's counter increments at the same instance in time.
TOD topologies are typically configured by designating one of the processors as a master TOD processor. The master processor is connected to an external oscillator and generates a step signal that is provided to other processors in the TOD topology. When TOD topologies are created they are designated as primary and secondary topologies, when the TOD start running with one of the topology, that topology is called active topology and the one that is non-active is known as backup.